package com.example.sfm.pojo.dto;

import io.swagger.v3.oas.annotations.media.Schema;
import jakarta.validation.constraints.NotBlank;
import jakarta.validation.constraints.NotNull;
import jakarta.validation.constraints.Pattern;
import jakarta.validation.constraints.Size;
import lombok.Data;
import lombok.experimental.Accessors;

@Data
@Accessors(chain = true)
@Schema(description = "教师信息传输对象")
public class TeachersDto {
    @Schema(description = "用户ID", deprecated = true )
    @NotNull(message = "用户ID不能为空")
    private Integer userId;

    @Schema(description = "教师编号（长度6-20位）", deprecated = true)
    @NotBlank
    @Size(min = 6, max = 20)
    private String teacherNumber;

    @Schema(description = "所属学院", deprecated = true)
    @NotBlank @Size(max = 100)
    private String department;

    @Schema(description = "职称（讲师/副教授/教授）", deprecated = true)
    @NotBlank
    @Pattern(regexp = "讲师|副教授|教授", message = "职称取值不正确")
    private String title;

    @Schema(description = "研究方向")
    @Size(max = 200)
    private String researchArea;

    @Schema(description = "办公电话")
    @Pattern(regexp = "^0\\d{2,3}-\\d{7,8}$", message = "电话格式：区号-号码")
    private String officePhone;

    @Schema(description = "办公室地址")
    @Size(max = 200)
    private String officeLocation;
}
